package src.A_JavaBase;

// 抽象类，用abstrac关键字定义
public abstract class Oop02 {
    /* 抽象类里可以有抽象方法，也可以有普通方法，如果一个类里有抽象方法，那它一定要是一个抽象类
    *  抽象方法只有方法名字，没有方法的实现！
    *  抽象类不能new实例化，只能靠子类去实现它
    *  单继承模式（ps：Java中只有接口能多继承，其他都是单继承）
    *  抽象类存在构造器
    * */
    public abstract void a();
    public void b(){
        System.out.println("b");
    }
    /*
    * 普通类：只有具体实现
    * 抽象类：具体实现和规范（抽象方法）都有！
    * 接口：只有规范！自己无法写方法~专业的约束！约束和实现分离，接口的本质是契约
    * */
}
